package com.itranswarp.wxapi.sample.controller;

import java.util.Base64;

import javax.servlet.http.HttpServletRequest;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import com.itranswarp.wxapi.material.ImageList;
import com.itranswarp.wxapi.material.MaterialCount;
import com.itranswarp.wxapi.material.VideoList;
import com.itranswarp.wxapi.material.VoiceList;

@RestController
public class MaterialController extends AbstractController {

	@RequestMapping(value = "/material/images", method = RequestMethod.GET)
	public ImageList getAllImages() {
		return client.materialImageList(0, 20);
	}

	@RequestMapping(value = "/material/videos", method = RequestMethod.GET)
	public VideoList getAllVideos() {
		return client.materialVideoList(0, 20);
	}

	@RequestMapping(value = "/material/voices", method = RequestMethod.GET)
	public VoiceList getAllVoices() {
		return client.materialVoiceList(0, 20);
	}

	@RequestMapping(value = "/material/count", method = RequestMethod.GET)
	public MaterialCount count() {
		return client.materialCount();
	}

	@RequestMapping(value = "/upload/image", method = RequestMethod.GET)
	public Object token(HttpServletRequest request) throws Exception {
		log.debug("will upload image...");
		byte[] imageData = Base64.getDecoder().decode(IMAGE_DATA);
		return client.uploadImage("test.jpg", imageData);

	}

	static final String IMAGE_DATA = "/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAAeAAD/4QMsaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAxNCA3OS4xNTE0ODEsIDIwMTMvMDMvMTMtMTI6MDk6MTUgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozRUJEMDdFRkRFNUExMUU1ODA3MEUyM0I1QTUzNEIyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozRUJEMDdGMERFNUExMUU1ODA3MEUyM0I1QTUzNEIyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjNFQkQwN0VEREU1QTExRTU4MDcwRTIzQjVBNTM0QjI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjNFQkQwN0VFREU1QTExRTU4MDcwRTIzQjVBNTM0QjI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+/+4ADkFkb2JlAGTAAAAAAf/bAIQAEAsLCwwLEAwMEBcPDQ8XGxQQ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";
}
